package com.wxdc.nmgyt.nmgytwydc.presenter.contract;

import com.wxdc.nmgyt.nmgytwydc.base.BasePersenter;
import com.wxdc.nmgyt.nmgytwydc.base.BaseView;
import com.wxdc.nmgyt.nmgytwydc.model.BASE_WORKFLOWCURRENT;
import com.wxdc.nmgyt.nmgytwydc.model.JcdInfoBean;
import com.wxdc.nmgyt.nmgytwydc.model.backresult.ValidateJcdInfoResultBean;

import java.util.List;

import okhttp3.ResponseBody;

/**
 * Created by Administrator on 2018/4/25.
 */

public interface NavigationDataContract {

    interface View extends BaseView{
        /**
         * 显示样地信息
         */
        void showYdInfo();
        /*
        * 显示监测点信息
        * */
        void showJcdInfo(List<JcdInfoBean> jcdInfoBeans);

        /**
         * @param responseBody
         * 提交样地信息反馈结果
         */
        void acceptCommitFeedBackInfoResult(ResponseBody responseBody);

        /**
         * 获取待审或退回的数据
         * @param results
         */
        void getBackOrWaitAuditDataResult(List<BASE_WORKFLOWCURRENT> results);

        /**
         * 获取审核通过的数据
         * @param results
         */
        void getPassAuditDataResult(List<BASE_WORKFLOWCURRENT> results);

        /**
         * 获取监测点数据信息,包括待审数据、回退数据、未提交数据
         * @param results
         */
        void getAuditDataResult(List<BASE_WORKFLOWCURRENT> results);

        /**
         * 验证该监测点是否已经录入信息查询结果
         * @param obj
         */
        void getYdInfoValidateResult(ValidateJcdInfoResultBean obj);
    }
    interface Persenter extends BasePersenter<View>{
        void getYdInfo(String ydbh);//通过样地编号获得样地信息

        /**
         * 通过token获取该用户下所有监测点信息
         */
        void getJcdInfo();

        /**
         * @param bean
         * 提交样地反馈信息
         */
        void commitFeedBackInfo(JcdInfoBean bean);

        /**
         * 查询审核数据
         * @param id(0:是待审和退回的数据；1：是当前用户审核完成的数据)
         */
        void findAuditData(int id);

        /**
         * 验证该监测点是否已经录入信息
         * @param gempointID
         */
        void validateIsYdInfo(String gempointID);
    }
}
